#ifndef DRINK_H_
#define DRINK_H_
//#include <cstdio>
#include <algorithm>
int c[10], v[10], h[10];
int maxV = 100;
int maxSatisfication(int V, int T) {
	int opt[100][10];
	opt[0][T] = 0;
	for (int i = 0; i <= V; i++) {
		opt[i][T] = -1;
	}

	for (int j = T - 1; j >= 0; j--) {
		for (int i = 0; i <= V; i++) {
			opt[i][j] = -1;
			for (int k = 0; k < c[j]; k++) {
				if (k * v[j] > i)
					break;
				int x = opt[i - k * v[j]][j + 1];
				if (x > 0) {
					x += k * h[j];
					opt[i][j] = std::max(opt[i][j], x);
				}
			}
		}
	}
	return opt[V][0];
}
#endif